查看原文
其他

使用cntext训练Glove词嵌入模型

大邓 大邓和他的Python 2022-07-09

近期活动

Python数据挖掘2022五月直播开始报名啦


Glove官方用于训练词嵌入模型的代码是C语言,虽然速度极快,但对于小白文科生而言,可理解易上手是更重要的。相比word2vec, Glove训练出的词向量模型,能够更多的保留语义的全局性信息。对于词嵌入(词向量)不太熟悉,可以阅读

从符号到嵌入:计算社会科学的两种文本表示
词嵌入可测量不同群体对某概念的态度(偏见)
大数据时代下社会科学研究方法的拓展—基于词嵌入技术的文本分析的应用

使用Python的mittens库实现Glove,对于小规模数据的训练。

例如6M的brown_corpus.txt,设定模型维度50, 迭代25次, 耗时175.98s。

import cntext as ct
import os

model = ct.Glove(cwd=os.getcwd(), lang='english')
model.create_vocab(file='data/brown_corpus.txt', min_count=5)
model.cooccurrence_matrix()
model.train_embeddings(vector_size=50, max_iter=25)
model.save()

Run

Step 1/4: ...Create vocabulary for Glove.
Step 2/4: ...Create cooccurrence matrix.
Step 3/4: ...Train glove embeddings. 
             Note, this part takes a long time to run
Step 3/4: ... Finish! Use 175.98 s

生成的Glove词嵌入文件位于output/Glove

训练好的词嵌入模型使用方法,可参照  影评实战 | 探索词向量妙处

代码数据下载获取,请点击阅读原文



精选文章

从符号到嵌入:计算社会科学的两种文本表示

推荐 | 社科(经管)文本分析快速指南

视频专栏课 | Python网络爬虫与文本分析

案例实战 | 企业信息数据采集

使用文本相似度可以识别变化的时间点

PNAS | 文本网络分析&文化桥梁Python代码实现

tomotopy | 速度最快的LDA主题模型

在会计研究中使用Python进行文本分析

文本分析方法在《管理世界》(2021.5)中的应用

SciencePlots | 科研样式绘图库

Wow~70G上市公司定期报告数据集

YelpDaset: 酒店管理类数据集10+G  

极简浏览器启动页StartPage分享

doccano|为机器学习建模做数据标注

使用WeasyPrint自动生成pdf报告文件

推荐 | 社科(经管)文本分析快速指南

100min视频 | Python文本分析与会计

Python数据挖掘2022五一工作坊开始报名啦

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存